“How Google does Machine Leaning” 總共有5次 Quiz,鐵人賽剛開始起步,就先依照Quiz分成五天,雖然內容可能不算豐富,就當作培養寫作習慣的暖身吧!
本章節主要進行簡單的開場,並且點出Google在Machine Learning上面的主打核心,Tensorflow和Google Cloud Platform (GCP)上的Google BigQuery。
前者大家應都不陌生,就是Google打造的機器學習Open Source套件,2019年已經發布了最新的Tensorflow 2.0版本,整合與簡化了許多函數的使用方式,並且支援更多的語言和系統,用Tensorflow Lite在輕量化與Edge Computing領域展現出企圖。
後者若沒有使用過GCP服務的人可能就不太熟悉,BigQuery是在GCP上面一款類似關聯式資料庫的服務,可以輕易地使用SQL語言進行運作,同時結合其他GCP上面的服務進行資料流的連動,另外,與傳統SQL不同的地方在於,能夠直接結合SQL語法和BigQuery的特殊語法進行Machine Learning模型的訓練,換句話說,利用SQL指令靈活的特性從資料庫中篩選適合的資料集,並直接用於機器學習模型的Build、Evaluate...,省去寫一堆pandas的python程式的麻煩。
截圖自 Coursera "How Google does Machine Learning" 課程
從本章節介紹的整部課程的五大核心內容。(如上圖所示)
首先,主要介紹Machine learning整體的大方向與概念,同時推坑為什麼要選擇Google?為什麼你該使用GCP?熟悉GCP各項服務的功能後,在未來整體的規劃上,才不會迷失了方向!
使用Tensorflow進行Machine learning的模型建立,這邊有特別提出一項常常被忽略的部分,也就是建立好的資料集,在網路上的資料集或者比賽提供的資料,雖然可能仍須經過處理,基本上還是已經受過至少一次的處置,但實務上要將機器學習導入產品化的公司,蒐集來的第一線資料總是比想像中的更為混亂。
舉例來說,出現頻率不低卻很嚴重的情況,就是資料內容與敘述文件有出入,原因很多,敘述文件版本過舊、檔案轉換導致、資料蒐集流程有問題(程式Bug、人為疏失),最可怕的是"第一線不為人知的暗黑兵法!"。
總而言之,俗話說"上梁不正,下樑歪。",建構出一份好的資料集是非常重要的,不然最終產生出來的模型都只是Garbage in garbage out。
接著應該就是大家最愛的部分,學習如何提升Machine learning模型的精確度,雖然,從過去到現在有各種黑魔法調參秘方,但是若想要建構出穩定可信的商業化產品,還是依循一些統計工具與機器學習技巧,才能有效提升模型的表現。
(以下課程會在 Advanced Machine Learning with TensorFlow on Google Cloud Platform)
這部分是要如何將Machine learning商業化、產品化最重要的一章。
此部分會提供許多具體化的機器學習實例,並且根據這些所學的技巧、工具,建立出自己的一套模式。
本章節主要敘述,Google已經將機器學習的應用拓展到許多日常生活方面,最貼近大眾的Google Photo、Youtube、Gmail等服務,到近年來熱門的self-driving都是機器學習應用的蹤跡,Tensorflow也已經在Google的4000多項產品中被應用,因此,你當然應該跟著老司機一起上車狂飆!
截圖自 Coursera "How Google does Machine Learning" 課程
為什麼要使用Google Cloud,看到這張圖應該很清楚,對於機器學習商業化產品服務的整體流程,都能夠在Google Cloud的服務中被達成,前半部在處理資料流與Training Machine Learning Model,是大部分的人最常耗費時間處理的地方,然而,這並不會是產品服務的最大挑戰,而且,實務上的資料並不僅僅是一份給定的資料集,而是會源源不絕持續湧入,因此,如何自動化、持久化的將這些資料進行搜集統整,就是使用Google Cloud的優勢,其中針對不同型態的資料類型(Stream、Batch),根據Google經驗上的建議是要使用相同的方式進行彙整(Cloud Dataflow),能夠減少一些不必要問題產生的失敗。
在下圖的金字塔中,Google Cloud基礎建設乘載著整個資料工程師工作的根基,再次地重申GCP是你最好的選擇!
截圖自 Coursera "How Google does Machine Learning" 課程
原本只想草草打些字苟且一下,沒想到就花了快三小時。